home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / tex / style / misc / isf.sty < prev    next >
Text File  |  1995-11-25  |  5KB  |  96 lines

  1. % Save file as: ISF.STY                Source: FILESERV@SHSU.BITNET  
  2. % Provide access to the italic san serif type style for LaTeX.  Once you
  3. % have included "isf" as a style option, you can use the \isf command to
  4. % select the italic san serif style, just as you would select the usual
  5. % italic style with \it, EXCEPT:
  6. %
  7. %    The various fonts defined here are all "loaded on demand".  As
  8. %    discussed in the LaTeX book, Section C.14.4, a loaded on demand
  9. %    font is subject to two restrictions when used in math mode:
  10. %
  11. %    - The font must be used OUTSIDE of math mode before it is used
  12. %      INSIDE of math mode.  The \load command can be used to get
  13. %      around this restriction.
  14. %
  15. %    - Only a single font size is available within math mode - the
  16. %      display, text, script and scriptscriptfonts will all be the
  17. %      same.  This can be avoided ONLY by changing the definitions
  18. %      given here to pre-load the appropriate fonts; see LFONTS.TEX
  19. %      for further information.  (Alternatively, \@getfont could be
  20. %      made more clever.)  Note that pre-loading the fonts could cause
  21. %      you to fill font space with fonts you never really use.
  22. %
  23. % In order to allow other style files that need access to \isf to input this
  24. % file safely, it is designed so that an attempt to input it a second time -
  25. % or, more exactly, when command "\isf" is already defined - is ignored.
  26. %
  27. % This file can be adapted easily to define other font type styles.  The real
  28. % limit is likely to come from the requirement that each style so defined must
  29. % be given a unique family number - TeX only supports 16 families and LaTeX
  30. % as usually configured already uses 10.  The right way to avoid this problem
  31. % is to modify \@getfont so that it ignores a family number of -1.  Fonts
  32. % so specified would not be usable in math mode, but that's no big deal; you
  33. % don't WANT to use tons of non-math fonts in math mode anyway.
  34. %
  35. % As currently written, this file assumes that you have boldface san serif
  36. % fonts available at the following point sizes:
  37. %
  38. %    lcmssi8
  39. %    lcmssi8 at 9pt
  40. %    cmssi10
  41. %    cmssi10 at 11pt
  42. %    cmssi10 at 12pt
  43. %    cmssi10 at 17pt
  44. %    cmssi10 at 20pt
  45. %    cmssi10 at 25pt
  46. %
  47. % All but the last of these should be commonly available.  I'm not sure about
  48. % the last one; LFONTS.TEX does not assume the availability of ANY 25 pt fonts
  49. % other than Roman.  If necessary, change the definition of \isfxxv@ to
  50. % \@subfont\isf\it.  (Alternatively, if you have italic sans serif fonts
  51. % at sizes smaller than 8pt, you might want to change the definitions of
  52. % \isfv@, \isfvi@, and \isfvii@.)
  53. %
  54. % Technical note:  It is possible to do without the \isf<size>@ macros by
  55. % including their contents, with a whole bunch of \@prtct's, within the
  56. % \@addfontinfo definitions.  This is a pain to do, and probably doesn't end
  57. % up saving any space anyway.  This way costs you a bunch of extra macros,
  58. % but it's a LOT easier to understand!
  59. %
  60. % Written by George D. Greenwade (BED_GDG@SHSU.BITMET) as a variation of
  61. % BSF.STY Written by Jerry Leichter (LEICHTER-JERRY@CS.YALE.EDU)
  62.  
  63. \expandafter\ifx\csname isf\endcsname\relax        %Once only, please
  64. % Note:  It's a pain to use \@ifundefined here - we don't want to pass the
  65. % rest of the definitions as an argument, but we can't easily use \endinput
  66. % since, with docsty, we can't control where the line breaks occur.
  67.  
  68. \typeout{Document Option `isf'  25 August 1989 (GDG)}
  69. \def\isf{\protect\pisf}
  70. \newfam\sfifam
  71. \@addfontinfo\@vpt{\@prtct\isfv@}
  72.   \def\isfv@{\def\pisf{\@subfont\isf\it}}
  73. \@addfontinfo\@vipt{\@prtct\isfvi@}           
  74.   \def\isfvi@{\def\pisf{\@subfont\isf\it}}
  75. \@addfontinfo\@viipt{\@prtct\isfvii@}
  76.   \def\isfvii@{\def\pisf{\@subfont\isf\it}}
  77. \@addfontinfo\@viiipt{\@prtct\isfviii@}
  78.   \def\isfviii@{\def\pisf{\@getfont\pisf\sfifam\@viiipt{lsmssi8}}}
  79. \@addfontinfo\@ixpt{\@prtct\isfx@}
  80.   \def\isfx@{\def\pisf{\@getfont\pisf\sfifam\@ixpt{lsmssi8\@halfmag}}}
  81. \@addfontinfo\@xpt{\@prtct\isfx@}
  82.   \def\isfx@{\def\pisf{\@getfont\pisf\sfifam\@xpt{cmssi10}}}
  83. \@addfontinfo\@xipt{\@prtct\isfxi@}
  84.   \def\isfxi@{\def\pisf{\@getfont\pisf\sfifam\@xipt{cmssi10\@halfmag}}}
  85. \@addfontinfo\@xiipt{\@prtct\isfxii@}
  86.   \def\isfxii@{\def\pisf{\@getfont\pisf\sfifam\@xiipt{cmssi10\@magscale1}}}
  87. \@addfontinfo\@xivpt{\@prtct\isfxiv@}
  88.   \def\isfxiv@{\def\pisf{\@getfont\pisf\sfifam\@xivpt{cmssi10\@magscale2}}}
  89. \@addfontinfo\@xviipt{\@prtct\isfxvii@}
  90.   \def\isfxvii@{\def\pisf{\@getfont\pisf\sfifam\@xviipt{cmssi10\@magscale3}}}
  91. \@addfontinfo\@xxpt{\@prtct\isfxx@}
  92.   \def\isfxx@{\def\pisf{\@getfont\pisf\sfifam\@xxpt{cmssi10\@magscale4}}}
  93. \@addfontinfo\@xxvpt{\@prtct\isfxxv@}
  94.   \def\isfxxv@{\def\pisf{\@getfont\pisf\sfifam\@xxvpt{cmssi10\@magscale5}}}
  95. \fi
  96.